---
title: 1-Click w/ Docker Compose
image: /images/user-guide/objects/objects.png
---

<Frame>
  <img src="/images/user-guide/objects/objects.png" alt="Header" />
</Frame>

<Warning>
Docker containers are for production hosting or self-hosting, for the contribution please check the [Local Setup](https://docs.twenty.com/l/ca/developers/local-setup).
</Warning>

## Visió general

Aquesta guia proporciona instruccions pas a pas per instal·lar i configurar l'aplicació Twenty utilitzant Docker Compose. L'objectiu és fer que el procés sigui senzill i evitar errors comuns que podrien trencar la vostra configuració.

**Important:** Només modifiqueu la configuració esmentada explícitament en aquesta guia. Modificar altres configuracions pot portar a problemes.

Consulteu la documentació [Configuració de Variables d'Entorn](https://docs.twenty.com/l/ca/developers/self-hosting/setup) per a configuracions avançades. Totes les variables d'entorn han de ser declarades al fitxer docker-compose.yml al nivell de servidor i / o de treballador, depenent de la variable.

## Requisits del Sistema

- RAM: Assegureu-vos que el vostre entorn tingui almenys 2 GB de RAM. La memòria insuficient pot fer que es bloquegin els processos.
- Docker i Docker Compose: Assegureu-vos que tots dos estan instal·lats i actualitzats.

## Opció 1: Script d'una línia

Instal·leu la versió estable més recent de Twenty amb una sola comanda:

```bash
bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
```

Per instal·lar una versió o branca específica:

```bash
VERSION=vx.y.z BRANCH=branch-name bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
```

- Reemplaceu x.y.z amb el número de versió desitjada.
- Reemplaceu branch-name amb el nom de la branca que voleu instal·lar.

## Opció 2: Passos manuals

Follow these steps for a manual setup.

### Pas 1: Configurar el Fitxer d'Entorn

1. **Crear el Fitxer .env**

   Copieu el fitxer d'entorn d'exemple a un nou fitxer .env al vostre directori de treball:

   ```bash
   curl -o .env https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/.env.example
   ```

2. **Generar Tokens Secrets**

   Executeu la comanda següent per generar una cadena aleatòria única:

   ```bash
   openssl rand -base64 32
   ```

   **Important:** Mantingueu aquest valor en secret / no el compartiu.

3. **Actualitzeu el `.env`**

   Reemplaceu el valor de lloc al vostre fitxer .env amb el token generat:

   ```ini
   APP_SECRET=first_random_string
   ```

4. **Establir la Contrasenya de Postgres**

   Actualitzeu el valor `PG_DATABASE_PASSWORD` al fitxer .env amb una contrasenya forta sense caràcters especials.

   ```ini
   PG_DATABASE_PASSWORD=my_strong_password
   ```

### Pas 2: Obtenir el Fitxer Docker Compose

Descarregueu el fitxer `docker-compose.yml` al vostre directori de treball:

```bash
curl -o docker-compose.yml https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/docker-compose.yml
```

### Pas 3: Llançar l'Aplicació

Inicieu els contenidors de Docker:

```bash
docker compose up -d
```

### Pas 4: Accedir a l'Aplicació

Si hosteu twentyCRM al vostre propi ordinador, obriu el navegador i navegueu a [http://localhost:3000](http://localhost:3000).

Si el hostejes en un servidor, verifiqueu que el servidor està en funcionament i que tot és correcte amb

```bash
curl http://localhost:3000
```

## Configuració

### Exposar Twenty a Accés Extern

Per defecte, Twenty s'executa a `localhost` al port `3000`. Per accedir-hi a través d'un domini extern o adreça IP, heu de configurar el `SERVER_URL` al vostre fitxer `.env`.

#### Entendre `SERVER_URL`

- **Protocol:** Utilitzeu `http` o `https` segons la vostra configuració.
  - Utilitzeu `http` si no heu configurat SSL.
  - Utilitzeu `https` si teniu SSL configurat.
- **Domini/IP:** Aquest és el nom de domini o l'adreça IP on la vostra aplicació és accessible.
- **Port:** Incloeu el número de port si no utilitzeu els ports per defecte (`80` per `http`, `443` per `https`).

### Requisits de SSL

SSL (HTTPS) és necessari per a que certes característiques del navegador funcionin correctament. Mentre aquestes característiques poden funcionar durant el desenvolupament local (ja que els navegadors tracten localhost de manera diferent), una configuració SSL adequada és necessària quan es hostatja Twenty en un domini regular.

Per exemple, l'API del porta-retalls podria requerir un context segur; algunes característiques com els botons de còpia al llarg de l'aplicació poden no funcionar sense HTTPS habilitat.

Recomanem fortament configurar Twenty darrere d'un proxy invers amb terminació SSL per a una seguretat i funcionalitat òptimes.

#### Configurant `SERVER_URL`

1. **Determina la Teva URL d'Accés**
   - **Sense Proxy Invers (Accés Directe):**

     Si esteu accedint a l'aplicació directament sense un proxy invers:

     ```ini
     SERVER_URL=http://your-domain-or-ip:3000
     ```

   - **Amb Proxy Invers (Ports Estàndard):**

     Si esteu utilitzant un proxy invers com Nginx o Traefik i teniu SSL configurat:

     ```ini
     SERVER_URL=https://your-domain-or-ip
     ```

   - **Amb Proxy Invers (Ports Personalitzats):**

     Si esteu utilitzant ports no estàndard:

     ```ini
     SERVER_URL=https://your-domain-or-ip:custom-port
     ```

2. **Actualitza el Fitxer `.env`**

   Obriu el vostre fitxer `.env` i actualitzeu el `SERVER_URL`:

   ```ini
   SERVER_URL=http(s)://your-domain-or-ip:your-port
   ```

   **Exemples:**

   - Accés directe sense SSL:
     ```ini
     SERVER_URL=http://123.45.67.89:3000
     ```
   - Accés via domini amb SSL:
     ```ini
     SERVER_URL=https://mytwentyapp.com
     ```

3. **Reinicia l'Aplicació**

   Perquè els canvis tinguin efecte, reinicieu els contenidors de Docker:

   ```bash
   docker compose down
   docker compose up -d
   ```

#### Consideracions

- **Configuració del Reverse Proxy:**

  Assegureu-vos que el vostre reverse proxy transfereixi les sol·licituds al port intern correcte (`3000` per defecte). Configureu la terminació SSL i qualsevol capçalera necessària.

- **Configuració del tallafocs:**

  Obriu els ports necessaris al vostre tallafocs per permetre l'accés extern.

- **Consistència:**

  L'`SERVER_URL` ha de coincidir amb la manera com els usuaris accedeixen a la vostra aplicació en els seus navegadors.

#### Persistència

- **Volums de dades:**

  La configuració de Docker Compose utilitza volums per mantenir les dades de la base de dades i l'emmagatzematge del servidor.

- **Entorns Stateless:**

  Si es desplega en un entorn stateless (per exemple, determinats serveis al núvol), configureu emmagatzematge extern per mantenir les dades.

## Resolució de problemes

Si trobeu algun problema, consulteu [Resolució de problemes](https://docs.twenty.com/l/ca/developers/self-hosting/troubleshooting) per trobar solucions.

